#ifndef TEMEL_H
#define TEMEL_H

#include <string>
#include <vector>
#include <SDL.h>
#include <SDL_image.h>

class Temel
{
    public:
        Temel();
        virtual ~Temel();

        virtual void Render(SDL_Surface* screen);
        virtual void Logic();
        SDL_Rect NormalizeBounds(const SDL_Rect& rect);

        void setSpriteImage(std::string path);
        void setX(int x) { bounce.x = x; }
        void setY(int y) { bounce.y = y; }
        void setBounce(SDL_Rect _bounce) { bounce = _bounce; }
        void setFrameBounce(SDL_Rect _frameBounce) { frameBounce = _frameBounce; }

        int getX() { return bounce.x; }
        int getY() { return bounce.y; }
        SDL_Rect getBounce();
        SDL_Rect getBounce2();
        SDL_Rect getFrameBounce() { return frameBounce; }
        SDL_Surface* getSurface() { return sprites; }

        //static std::vector<Temel*> vRender;

    protected:
        SDL_Surface* sprites;
        SDL_Rect bounce;
        SDL_Rect frameBounce;

        int spriteX;
        int spriteY;
        int spriteW;
        int spriteH;
    private:

};

#endif // TEMEL_H
